//package com.ccsu.joysport.config;
//
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.stereotype.Component;
//import org.springframework.web.cors.CorsConfiguration;
//import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
//import org.springframework.web.filter.CorsFilter;
//import org.springframework.web.servlet.config.annotation.CorsRegistry;
//import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
//import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
//
//@Configuration
//public class WebConfig implements WebMvcConfigurer {
//
//    @Autowired
//    StudentInterceptor studentInterceptor;
//
//    @Autowired
//    TeacherInterceptor teacherInterceptor;
//
//    @Override
//    public void addCorsMappings(CorsRegistry registry) {
//        registry.addMapping("/**")
//                .allowedOrigins("http://你的前端域名")
//                .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
//                .allowedHeaders("*")
//                .allowCredentials(true);
//    }
//
//    // 后台业务拦截器path
//    private static final String[] USER_INTERCEPTOR = {
//            // 学生相关业务统一使用/ccsu/user/**
//            "/ccsu/user/**",
//    };
//
//    // 老师端业务拦截器path
//    private static final String[] TEACHER_INTERCEPTOR = {
//            // 老师端相关业务统一使用/teacher/**
//            "/ccsu/teacher/**",
//    };
//
//
//    /**
//     * 登录拦截器
//     *
//     * @param registry 注册
//     */
//    @Override
//    public void addInterceptors(InterceptorRegistry registry) {
//        // student 端拦截器
//        registry.addInterceptor(studentInterceptor).addPathPatterns(USER_INTERCEPTOR);
//        // teacher 端拦截器
//        registry.addInterceptor(teacherInterceptor).addPathPatterns(TEACHER_INTERCEPTOR);
//    }
//
//    @Bean
//    public CorsFilter corsFilter() {
//        CorsConfiguration config = new CorsConfiguration();
//        // 允许所有来源的请求
//        config.addAllowedOrigin("*");
//        // 允许所有的请求方法（GET、POST等）
//        config.addAllowedMethod("*");
//        // 允许所有的请求头
//        config.addAllowedHeader("*");
//        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
//        source.registerCorsConfiguration("/**", config);
//        return new CorsFilter(source);
//    }
//}